<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>

<body>

</body>

<script>

    // 局部变量和全局变量

    // 局部变量 => 
    // (1) 在函数内通过var关键词声明的变量叫做局部变量
    // (2)  形参也是一个局部变量

    // 特征
    // (1) 局部变量仅在函数内生效,对函数外没有任何影响
    // (2) 函数中的局部变量和方法仅在函数内有效, 当函数执行完毕,对应的局部变量和方法都会被释放, 下次函数调用时会重新生成

    // 全局变量 =>  
    // (1) 在函数外(脚本中)外通过var关键词声明的变量叫做全局变量
    // (2) 不通过关键词直接声明的变量,也是全局变量, 缺点: 没有变量提升 

    // 作用域: 代码生效的区域
    // 局部作用域(函数作用域) => 变量和方法仅在函数内有效
    // 全局作用域:  自当前script标签开始的任何位置均可访问


    var a = 10;
    var b = 20;
    var c = a + b;
    console.log(a, b, c);

    function fn(){
        console.log("函数内", a,b,c);  // 函数内也可以访问全局变量
    }
    fn();

</script>
<!-- <script>
    console.log("下一个脚本", a, b, c);
</script> -->

</html>